Skip to content

Unity是一个全平台游戏开发引擎。 具有组件化设计、入门简单的特点。 常用于开发:游戏、VR/AR、移动端软件

核心概念

引擎

将开发游戏的常用功能代码,集成为可视化组件,易于复用。

组件化

项目 -> 场景 -> 游戏对象 -> 组件 -> 属性 项目:最大层级。 场景:与Scene场景面板一一对应,构成(游戏)项目的要素。 游戏对象:通过Hierarchy层级面板,控制对象和对象之间的层级。 组件:与Inspector检视面板一一对应,构成游戏对象的功能。 属性:通过Inspector检视面板,控制功能点的具体参数。

快速上手

安装软件

  1. 进入官网,下载并安装UnityHub.
  2. 安装 - 右上角安装编辑器,选择比较新的安装即可。
  3. 安装 - 添加打包模块
    • Android Build Support 安卓端
    • WebGL BUild Support 网页端
    • windows Build Support 桌面端

创建项目

  1. 项目 - 右上角新项目
    • 3D(URP) 三维 统一渲染管线,可兼顾移动端
    • 3D(HDRP) 三维 高清渲染管线,一般用于PC

界面

Project项目资源

管理所有资源文件的面板。 该面板和资源管理器中的项目文件夹中的Assets文件夹互相映射

Scene场景

编辑场景的面板。 列出所有游戏对象。

场景基本操作

切换中心点Z

点击上方工具栏第1个工具切换。 Center以选中内容中点为中心;Pivot以对象自身为轴心。 主要用于批量形变。

切换坐标系

点击上方工具栏第2个工具切换。 Global为全局坐标系(右上角);Local为自身坐标系。 主要用于批量形变。

切换视角

点击右上方的立体坐标器切换。 x轴从侧面平视,y轴从顶部俯视,z轴从正面平视

切换焦距

点击右上角立体坐标器下方文字切换。 Persp为正焦视图,Iso为定焦视图。 正焦视图近大远小。

旋转场景

Alt + 拖动鼠标左键:以目标为中心旋转。 拖动鼠标右键:以当前视角为中心旋转。 平面坐标器右上角有锁定按钮,激活后无法旋转。

缩放场景

Alt + 拖动鼠标右键。 滚动鼠标滚轮。

移动场景

拖动鼠标中间。 工具栏激活拖动

游戏对象基本操作

选中游戏对象

层级面板中单机目标对象。

聚焦游戏对象F

层级面板中双击目标对象。 选中对象后,在场景面板按F。

旋转游戏对象E

工具栏E激活旋转。 拖动纬度线,旋转目标轴。 拖动旋转球内部,任意方向旋转。 红色X轴,绿色Y轴,蓝色Z轴。

缩放游戏对象R

工具栏R激活缩放。 拖动缩放点,目标轴方向缩放。 拖动中心点,等比缩放。 工具栏T激活平面缩放。 拖动缩放点,拉伸目标面。 拖动缩放变,拉伸目标轴。

移动游戏对象W

工具栏W激活移动。 拖动箭头:在箭头方向移动。 拖动方形:在方形的平面上移动(固定一个轴,移动另外两个轴位置)。 红色X轴,绿色Y轴,蓝色Z轴。

Game主视角

玩家视角的面板。 场景中的摄像机拍摄到的视角。

Hierarchy层级

管理场景中所有游戏对象的面板。 将游戏对象以层级形式展示。

父子层级

子集中的变形,基于父集的形变。

Inspector检视属性

显示一个游戏对象所包含的组件,及组件中的属性。 具体常用组件在下文详述。

文件类型

资源包unitypackage

导出:项目面板中,右键Export package包。 导入:双击资源包、将资源包拖入项目面板、右键Import package。

材质Material(.mat)

通过Albedo属性选择固有色背景图片

物理材质Physic Material(.physicMaterial)

用于描绘物体自身的物理属性。

摩擦力:越小越容易被其他碰撞体影响到。 弹力:越小反作用力越小。 组合弹力、摩擦力:与碰撞体碰撞时,自身实际受到的物理属性。

预设体Prefab Asset(.prefab)

修改预设体的组件和属性,会直接反馈给场景内的所有该组件。

Prefab属性

预设体在检视面板中会显示额外的Prefab模块。

Select:定位项目面板中的预设体文件。 Revert:将组件信息还原至预设体。 Apply:将组件信息赋值给预设体。

模型(.fbx)

一个完整的模型是通过多个对象组合而来的,如动画。 创建模型时,模型的正前方,指向z箭头的方向。

组件类型

Transform位置信息

位置信息是最基础的组件,不可被移除。 Position位置 Rotation角度 Scale缩放

工具栏

Reset重置全部

Mesh Filter网格过滤器

定义游戏对象的形状

Mesh Renderer网格渲染器

定义游戏对象的外观

Materials材质

地形Terrain

TODO: 地形模块变化很大,需要改日再看下。

地形组件具备通过画笔改变地形的能力。 支持加载贴图纹理、加载树、加载草坪。

刚体Rigidbody

使游戏对象具备物理特性,如重力。 用于模拟现实物理效果。

质量:影响刚体的重量。 阻力:影响刚体下落的速度。 角阻力:影响刚体当重心偏移时下落的旋转量。 是否使用重力:不会下落,但允许被碰撞。 是否质量无限大Is Kinematic:不会被重力影响,且不会被碰撞移动自身。 冻结Constraints:让刚体在某一方向、角度上不受力。

碰撞体Collider

描绘被碰撞物体的形状。 碰撞体的大小可以跟物体实际大小不同。 发生碰撞的条件:两个物体都有碰撞体,至少一个物体具有刚体组件。 发生作用力的条件:两个物体都有碰撞体组件和刚体组件。

编辑Edit Collider:显示碰撞体的形状修改按钮。 物理材质Material:影响碰撞体的摩擦力、弹力等自身的物理属性。